package com.hospital.common.utils;


import com.hospital.common.enums.SaltConst;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Base64;

/**
 * 密码工具类
 * @author yhn
 * @version 1.0
 */
public class PwdUtils {
    /**
     * 密码加密
     * @param password 用户密码
     * @return 加密后的密码
     */
    public static String sha256(String password) throws NoSuchAlgorithmException {
        return Base64.getEncoder().encodeToString(MessageDigest.getInstance("SHA-256").digest((password + SaltConst.SALT).getBytes()));
    }

    /**
     * 验证密码
     * @param password 需要验证的密码
     * @param hashPassword 用户存储的密码
     * @return 返回验证结果
     */
    public static boolean verifyPassword(String password, String hashPassword) throws NoSuchAlgorithmException {
        return hashPassword.equals(sha256(password));
    }
}
